package org.edu.modules.common.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;

import java.util.List;
import java.util.Map;

import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.edu.modules.common.entity.VeBaseSpecialty;

@Mapper
public abstract interface VeBaseSpecialtyMapper extends BaseMapper<VeBaseSpecialty> {
    public abstract List<VeBaseSpecialty> querySpecialtyListByFalid(Integer id);

    public abstract List<Map<String, Object>> getSpecialtyPageList(VeBaseSpecialty veBaseSpecialty);

    public abstract VeBaseSpecialty getSpecialtyByName(Integer id, String name);

    public abstract VeBaseSpecialty getSpecialtyByBH(Integer id, String bh);

    public abstract List<Map<String, Object>> getSpecialtyStudentStatistics();

    public abstract List<Map<String, Object>> getSpecialtyListByPid(Long paramLong);

    public abstract List<Map<String, Object>> getSpecialtyList(Integer paramInteger1, Integer paramInteger2);

    public abstract List<Map<String, Object>> getSpecialtyListByFalId(Integer paramInteger);

    public abstract List<Map<String, Object>> getSpecialtyByZYMC(String zymc);

    public abstract List<Map<String, Object>> getSpecialtyAllListByFalIdList(List<Map<String, Object>> facultyList);

    public abstract int stopSpecialtyBatch(@Param("ids") List<String> ids);

    public abstract int deleteSpecialtyBatch(@Param("ids") List<String> ids);

    public abstract int deleteSpecialtyByFalId(@Param("ids") String[] ids);

    public abstract int stopSpecialtyByFalId(@Param("falIds") String[] falIds);

    public abstract int updateSpecialtyFalIdById(@Param("ids") List<Integer> ids, @Param("falId") Integer falId);

    public abstract List<Map<String, Object>> getGraduatePeopleCount(@Param("specName") String specName);
}
